package Parser;
import Data.RuleDB;
import GUI.AObserver;

/**
 * @author Martin
 * @version 1.0
 * @created 24-III-2012 8:05:00
 */
public abstract class AParser {

	private RuleDB db;
	/**
	 * reference predana creatorem, parser sam neobsluhuje observer
	 */
	private ArrayList observers;
	public RuleDB m_RuleDB;
	public AObserver m_AObserver;

	public AParser(){

	}

	public void finalize() throws Throwable {

	}

	/**
	 * ukonci sve vlakno
	 */
	public void end(){

	}

	/**
	 * Spouští parsování v jiném vláknu, ošetřit nutné čekání-> chyba, 5 min, získání
	 * dat 1 hodina, jinak běží až do konec aplikace, před ukončením aplikace ukončit
	 * i toto vlákno!!!
	 * 
	 * @param parserData
	 */
	public abstract void parse(ParserData parserData);

	/**
	 * 
	 * @param message
	 */
	public void update(String message){

	}

}